const { insertData, findData, findOneData, updateData, deleteOneData, requstPromise, randomWord } = require('../utils')
const { updateUserInfo } = require('./user')
const crypto = require('crypto')

const Questions = {
    // 增加问题
    async addQuestions(option) {
        console.log('增加问题')
        const { describe, describePic, title, optionA, optionAPic, optionB, optionBPic, optionC, optionCPic, optionD, optionDPic, answer, collection } = option
        return requstPromise(await insertData('camluniQuestions', {
            id: randomWord(false, 43),
            describe, // 问题描述
            describePic, // 问题配图
            title, // 问题标题
            optionA, // 问题 A
            optionAPic, // 问题 A 配图
            optionB, // 问题 B
            optionBPic, // 问题 B 配图
            optionC, // 问题 C
            optionCPic, // 问题 C 配图
            optionD, // 问题 D
            optionDPic, // 问题 D 配图
            answer, // 答案
            collection, // 集合  0 没有  1 默认  2 分享后
        }))
    },

    // 删除指定id
    async deleteQuestions(id) {
        return requstPromise(await deleteOneData('camluniQuestions', { id }))
    },

    // 通过用户id获取用户信息
    async editQuestions(option) {
        const { id, ...data } = option
        return requstPromise(await updateData('camluniQuestions', { id }, { ...data }))
    },

    // 获取问题列表
    async findQuestions(option = {}) {

        let data = option
        // 清除无用的信息
        for (let attr in data) {
            if (data[attr] == null || data[attr] == undefined || data[attr] == 'undefined') {
                delete data[attr]
            }
        }
        // title 支持模糊查询
        if (data.title) {
            data.title = { $regex: data.title, $options: 'i' }
        }

        return requstPromise(await findData('camluniQuestions', data, { 'creatTime': -1 }))
    },

    // 增加问题
    async verifyAnswer(option) {
        console.log('验证问题')
        const { id, answer } = option
        console.log(option, 1000)
        let res = await findOneData('camluniQuestions', {
            id
        })
        console.log(res, 151515555)
        let isAnswer = false
        console.log('答案：', answer == res.answer)
        if (answer == res.answer) {
            isAnswer = true
        }
        return requstPromise(isAnswer)
    },
}

module.exports = Questions
